In information retrieval, an open domain question answering system aims at returning an answer in response to the user’s question. The returned answer is in the form of short texts rather than a list of relevant documents. The system uses a combination of techniques from computational linguistics, information retrieval and knowledge representation for finding answers.
The system takes a natural language question as an input rather than a set of keywords, for example, “When is the national day of China?” The sentence is then transformed into a query through its logical form. Having the input in the form of a natural language question makes the system more user-friendly, but harder to implement, as there are various question types and the system will have to identify the correct one in order to give a sensible answer. Assigning a question type to the question is a crucial task, the entire answer extraction process relies on finding the correct question type and hence the correct answer type.
Keyword extraction is the first step for identifying the input question type. In some cases, there are clear words that indicate the question type directly. i.e. “Who”, “Where” or “How many”, these words tell the system that the answers should be of type “Person”, “Location”, “Number” respectively. In the example above, the word “When” indicates that the answer should be of type “Date”. POS tagging and syntactic parsing techniques can also be used to determine the answer type. In this case, the subject is “Chinese National Day”, the predicate is “is” and the adverbial modifier is “when”, therefore the answer type is “Date”. Unfortunately, some interrogative words like “Which”, “What” or “How” do not give clear answer types. Each of these words can represent more than one type. In situations like this, other words in the question need to be considered. First thing to do is to find the words that can indicate the meaning of the question. A lexical dictionary such as WordNet can then be used for understanding the context.
Once the question type has been identified, an Information retrieval system is used to find a set of documents containing the correct key words. A tagger and NP/Verb Group chunker can be used to verify whether the correct entities and relations are mentioned in the found documents. For questions such as “Who” or “Where”, a Named Entity Recogniser is used to find relevant “Person” and “Location” names from the retrieved documents. Only the relevant paragraphs are selected for ranking.
A vector space model can be used as a strategy for classifying the candidate answers. Check if the answer is of the correct type as determined in the question type analysis stage. Inference technique can also be used to validate the candidate answers. A score is then given to each of these candidates according to the number of question words it contains and how close these words are to the candidate, the more and the closer the better. The answer is then translated into a compact and meaningful representation by parsing. In the previous example, the expected output answer is “1st Oct.”